home *** CD-ROM | disk | FTP | other *** search
/ Amiga Inside! / Amiga FD Inside (1995)(Ultramax).iso / berndspd / devtools / precognition / src / library / interactorclass.h < prev    next >
Encoding:
C/C++ Source or Header  |  1994-12-16  |  3.0 KB  |  119 lines

  1. /* ==========================================================================
  2. **
  3. **                   InteractorClass.h
  4. **
  5. ** ©1991 WILLISoft
  6. **
  7. ** ==========================================================================
  8. */
  9.  
  10. #ifndef INTERACTORCLASS_H
  11. #define INTERACTORCLASS_H
  12.  
  13. #include <exec/types.h>
  14. #include "Interactor.h"
  15. #include "GraphicObjectClass.h"
  16. #include "pcgWindow.h"
  17. #include "parms.h"
  18.  
  19. struct InteractorClass
  20. {
  21.    const PClass *isa;
  22.    char  *ClassName;
  23.  
  24.    void   (*CleanUp)
  25.              __PARMS(( PObject *self ));
  26.    tPoint (*Location)
  27.              __PARMS(( GraphicObject *self ));
  28.    tPoint (*SetLocation)
  29.              __PARMS(( GraphicObject *self,
  30.               PIXELS      LeftEdge,
  31.               PIXELS      TopEdge ));
  32.    tPoint (*Size)
  33.              __PARMS((  GraphicObject *self ));
  34.    tPoint (*AskSize)
  35.              __PARMS(( GraphicObject *self,
  36.               PIXELS            Width,
  37.               PIXELS            Height ));
  38.    tPoint (*SetSize)
  39.              __PARMS(( GraphicObject *self,
  40.               PIXELS      Width,
  41.               PIXELS      Height ));
  42.    UWORD  (*SizeFlags)
  43.              __PARMS(( GraphicObject *self ));
  44.  
  45.    void (*Render)
  46.              __PARMS(( GraphicObject *self,
  47.               RastPort  *RPort ));
  48.  
  49.    BOOL (*SetTitle)
  50.              __PARMS(( GraphicObject *self,
  51.               char      *title ));
  52.  
  53.    char *(*Title)
  54.              __PARMS(( GraphicObject *self ));
  55.  
  56. /* additions for font information */
  57.    TextAttr *(*DefaultFont) __PARMS(( GraphicObject *self ));
  58.    BOOL (*SetDefaultFont) __PARMS(( GraphicObject *self, TextAttr *default_font ));
  59.  
  60.    AlignInfo *(*TextAlignment) __PARMS(( GraphicObject *self ));
  61.  
  62.    BOOL (*SetTextAlignment)
  63.              __PARMS(( GraphicObject *self,
  64.               UBYTE         Flags,
  65.               BYTE          Xpad,
  66.               BYTE          Ypad ));
  67.  
  68.    PClass *BuilderMethods;
  69.  
  70. /*--- New Methods ----------------------------*/
  71.  
  72.    struct pcgWindow *(*InteractorWindow)
  73.              __PARMS(( Interactor *self ));
  74.  
  75.    void (*SetInteractorWindow)
  76.              __PARMS(( Interactor *self,
  77.               struct pcgWindow *window ));
  78.  
  79.    Gadget *(*FirstGadget)
  80.              __PARMS(( Interactor *self ));
  81.  
  82.    USHORT (*nGadgets)
  83.              __PARMS(( Interactor *self ));
  84.  
  85.    ULONG (*IDCMPFlags)
  86.              __PARMS(( Interactor *self ));
  87.  
  88.    USHORT (*ClaimEvent)
  89.              __PARMS(( Interactor *self,
  90.               IntuiMessage *event ));
  91.  
  92.    USHORT (*Respond)
  93.              __PARMS(( Interactor *self,
  94.               IntuiMessage *event ));
  95.  
  96.    void (*Refresh)
  97.              __PARMS(( Interactor *self ));
  98.  
  99.    BOOL (*EnableIactor)
  100.              __PARMS(( Interactor *self,
  101.               BOOL       enable ));
  102.  
  103.    BOOL (*isEnabled)
  104.              __PARMS(( Interactor *self  ));
  105.  
  106.    BOOL (*Activate)
  107.              __PARMS(( Interactor *self,
  108.               BOOL       activate ));
  109.  
  110.    BOOL (*isActive)
  111.              __PARMS(( Interactor *self ));
  112.  
  113. };
  114.  
  115. struct InteractorClass *InteractorClass __PARMS(( void ));
  116.  
  117. void InteractorClass_Init __PARMS(( struct InteractorClass *class ));
  118.  
  119. #endif